package com.example.entity.po;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import com.example.utils.*;
import com.example.enums.*;

import java.util.Date;
import java.io.Serializable;
/**
 * @Description:联系人
 * 
 * @Date:2024/07/25
 */
public class UserContact implements Serializable {

	/**
	 * 用户id
	 */
	private String userId;

	/**
	 * 联系人ID或者群组ID
	 */
	private String contactId;

	/**
	 * 联系人类型 0：好友 1群组
	 */
	private Integer contactType;

	/**
	 * 创建时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	/**
	 * 状态 0：非好友 1：好友 2：已删除好友 3：被好友删除 4：已拉黑好友 5：被好友拉黑
	 */
	@JsonIgnore
	private Integer status;

	/**
	 * 最后更新时间
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date lastUpdateTime;

	public String getUserId() {
		return userId;
	}
	public void  setUserId(String userId) {
		this.userId = userId;
	}
	public String getContactId() {
		return contactId;
	}
	public void  setContactId(String contactId) {
		this.contactId = contactId;
	}
	public Integer getContactType() {
		return contactType;
	}
	public void  setContactType(Integer contactType) {
		this.contactType = contactType;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void  setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	public Integer getStatus() {
		return status;
	}
	public void  setStatus(Integer status) {
		this.status = status;
	}
	public Date getLastUpdateTime() {
		return lastUpdateTime;
	}
	public void  setLastUpdateTime(Date lastUpdateTime) {
		this.lastUpdateTime = lastUpdateTime;
	}
	@Override
	public String toString() {
		return "用户id:"+(userId == null ? "空" : userId)+", 联系人ID或者群组ID:"+(contactId == null ? "空" : contactId)+", 联系人类型 0：好友 1群组:"+(contactType == null ? "空" : contactType)+", 创建时间:"+(createTime == null ? "空" : DateUtil.format(createTime, DateTimePatternEnum.YYYY_MM_DD_HH_MM_SS.getPattern()))+", 状态 0：非好友 1：好友 2：已删除好友 3：被好友删除 4：已拉黑好友 5：被好友拉黑:"+(status == null ? "空" : status)+", 最后更新时间:"+(lastUpdateTime == null ? "空" : DateUtil.format(lastUpdateTime, DateTimePatternEnum.YYYY_MM_DD_HH_MM_SS.getPattern()));
	}
}